// 引入defineStore用于创建store
import { defineStore } from "pinia";

// 定义并暴露一个store
export const useStore = defineStore("defineMap", {
  // 动作
  actions: {},
  // 状态
  state() {
    return {
      createModelDialog: {
        visible: false,
      },
      listAllData: {
        tableData: [
          {
            id: 1,
            username: "小王",
            password: "123",
            desc: "这位是小王",
          },
        ],
        currentPage: 1,
        pageSize: 5,
        total: 1,
      },
      customizePageDialog: {
        visible: false,
        openType: "",
        url: "",
      },
      changeModelNameDialog: {
        visible: false,
      },
      ListDesign: {
        // 列表页设计
        pageConfig: {
          // 页面设置
          ruleForm: {
            name: "未命名列表",
            desc: "",
            layout: "list",
            url: "",
          },
        },
        // 列表设计
        listConfig: {
          fieldConfig: { // 字段配置
            tableData: {
              tableList: [
                {
                  chineseName: "",
                  fieldName: "",
                  isShow: false,
                  showConfig: ["fixed"],
                  isQuery: false,
                  quickQuery: "",
                  isStatistics: "",
                  sort: "desc",
                  operation: "",
                },
              ],
            },
          },
          sortConfig: { // 排序条件
            tableData: {
              tableList: [
                {
                  chineseName: "",
                  fieldName: "",
                  sort: "desc",
                },
              ],
            },
          },
          buttonConfig: { // 按钮配置
            tableData: {
              tableList: [
                {
                  buttonName: "修改",
                  buttonPosition: "行内",
                  buttonType: "修改",
                  isShowPC: true,
                },
                {
                  buttonName: "新增",
                  buttonPosition: "顶部",
                  buttonType: "新增",
                  isShowPC: true,
                },
                {
                  buttonName: "详情",
                  buttonPosition: "行内",
                  buttonType: "详情",
                  isShowPC: true,
                },
                {
                  buttonName: "导入",
                  buttonPosition: "顶部",
                  buttonType: "导入",
                  isShowPC: true,
                },
                {
                  buttonName: "导出",
                  buttonPosition: "顶部",
                  buttonType: "导出",
                  isShowPC: true,
                },
                {
                  buttonName: "下载模板",
                  buttonPosition: "顶部",
                  buttonType: "下载模板",
                  isShowPC: true,
                },
                {
                  buttonName: "删除",
                  buttonPosition: "行内",
                  buttonType: "删除",
                  isShowPC: true,
                },
              ],
            },
          },
        },
      },
    };
  },
  // 计算
  getters: {},
});
